Capturing Architectural Knowledge of Software Product Lines
نویسنده
چکیده
Context. In the context of software product lines, architectural decisions determine the design of an architecture that provides the software with the ability to be configured for different product variants and extended to accommodate future requirements. Although, variability models describe the different configurations of current and future products that the product line supports, the knowledge of how the architecture was designed to support variations of a product in space and time exists only in the architects’ mind or remains implicit in architectural models. This thesis argues that the knowledge found in architectural models and design rationale can be used to facilitate the derivation of product variants and the evolution of the product line. Objectives. To support this notion, we propose the AKinSPL method for capturing the architectural knowledge in software product lines. Methods. The method is founded on the factors that architects take into consideration when designing the architecture, and a meta-model that represents the mental models and processes architects follow during the creation of a product line architecture. To validate the concepts of AKinSPL, its guidelines were mapped to activities of the PuLSE-DSSA methodology and new artifacts were created to capture architectural knowledge on the basis of those guidelines. Next, it was applied to capture the architectural knowledge of an embedded software system for automatic control of agricultural equipment within the context of an ongoing case study. Results. The results showed that diagrams augmented with design rationale enable a faster understanding of the purpose of the architectural models. Similarly, the prescriptions of the architecture with respect to the implementation are conveyed more easily. Conclusions. The application of the method permitted modeling design decisions so as to decompose business-level decisions into finegrained technical decisions and to identify dependencies among them. Similarly, the method permitted to model the relation between the variability described in a feature model and the architecture model.
منابع مشابه
On the Role of Architectural Design Decisions in Software Product Line Engineering
An increased attention to documenting architectural design decisions and their rationale has resulted in several approaches and prototype tools for capturing and managing architectural knowledge. However, most of them are focused on architecting single products and little attention has been paid to include design decisions in the context of product line architectures. This paper studies two sim...
متن کاملDesign Wizards for Software Product Lines
Large software applications have complex architectures and constraints restricting how components can be composed. The infrastructure to implement product lines for these applications require the support of software tools. To be effective in constructing software families, tools need structural and semantic domain knowledge. Our work addresses the aspects concerned with the development of tools...
متن کاملReuse of Architectural Knowledge in SPL Development
Software Product Lines (SPL) promote reuse within an application domain in an organized fashion. Preimplemented software components are arranged according to a product line architecture (PLA). Balancing possibly conflicting quality attributes of all potential products makes PLA design a challenging task. Moreover, if quality attributes are part of the variabilities of the SPL, then a unique PLA...
متن کاملArchitectural knowledge discovery with latent semantic analysis: Constructing a reading guide for software product audits
Architectural knowledge is reflected in various artifacts of a software product. In a software product audit this architectural knowledge needs to be uncovered and its effects assessed in order to evaluate the quality of the software product. A particular problem is to find and comprehend the architectural knowledge that resides in the software product documentation. In this article, we discuss...
متن کاملTwo controlled experiments on model-based architectural decision making
Context: In recent years, architectural design decisions are becoming more and more common for documenting software architectures. Rather than describing the structure of software systems, architectural decisions capture the design rationale and – often reusable – architectural knowledge. Many approaches and tools have been proposed in the literature to support architectural decision making and...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012